package com.starleague.battletech;

public abstract class AbstractBattletechPoints
        implements IMutableBattletechPoints
{
    private int currentPoints;
    private int maximumPoints;

    protected AbstractBattletechPoints(int points)
    {
        this.currentPoints = points;
        this.maximumPoints = points;
    }

    // public BattletechPoints(BattletechPoints points)
    // {
    // this.currentPoints = points.currentPoints;
    // this.maximumPoints = points.maximumPoints;
    // }

    protected AbstractBattletechPoints()
    {
        //
    }

    @Override
    public int getCurrentPoints()
    {
        return this.currentPoints;
    }

    @Override
    public void setCurrentPoints(int currentPoints)
    {
        this.currentPoints = currentPoints;
    }

    @Override
    public int getMaximumPoints()
    {
        return this.maximumPoints;
    }

    protected void setMaximumPoints(int maximumPoints)
    {
        this.maximumPoints = maximumPoints;
    }

    @Override
    public String toString()
    {
        return this.getClass().getSimpleName() + " [" + this.currentPoints + " / " + this.maximumPoints + "]";
    }
}
